Ad Widget

Collapse

Ìîíèòîðèíã VoIP GSM øëþçîâ AddPac - AP-GS1002

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • kuznetsov_t
    Junior Member
    • Apr 2011
    • 6

    #1

    Ìîíèòîðèíã VoIP GSM øëþçîâ AddPac - AP-GS1002

    Äîáðîãî âðåìåíè ñóòîê.
    Åñòü ïîòðåáíîñòü â ìîíèòîðèíãå VoIP GSM øëþçîâ AddPac - AP-GS1002, ÷åðåçíèõ ñ àñòåðèñêà èñõîäÿùèå âûçîâû ïðîõîäÿò. Òîåòü â ñåòü îíè ïî Ethernet. Âîçìîæíî ëè è êàê ýòî ðåàëèçîâàòü:
    1. Ìîíèòîðèíã äîñòóïíîñòè äàííîãî îáîðóäîâàíèÿ.
    2. Ìîíèòîðèã ðàáîòîñïîñîáíîñòè èñõîäÿùèõ çâîíêîâ (òîåñòü ðàáîòîñïîñîáíîñòü ñèì êàðò ñîòîâîãî îïåðàòîðà).
    Ñïàñèáî.
  • alex-rterm
    Junior Member
    • Aug 2009
    • 12

    #2
    Доступность железок можно проверять пингами. А работоспособность можно косвенно определять, исходя из величины RSSI, которую можно посмотреть через интерфейс командной строки.

    У нас, в zabbix_agentd.conf я добавил такой параметр:
    Code:
    UserParameter=addpac.gsm.rssi[*], /etc/zabbix/get-rssi.pl $1
    А вот сам скриптик, который телнетится на железку и получает интересуемые цифры:
    Code:
    #!/usr/bin/perl
    # Скрипт получает у GSM-шлюза AP-GS1002 значение RSSI (сила сигнала).
    
    use Net::Telnet ();
    use strict;
    
    # Учетные данные
    my $username='root';
    my $passwd='router';
    my $host='192.168.168.88';
    
    # В командной строке передается номер слота GSM
    my $slot=shift;
    
    # Указываем, какую строку ожидать, перед тем, как передавать команды
    my $t = new Net::Telnet (Timeout => 1, Prompt => '/GS1002./');
    $t->open($host);
    $t->login($username, $passwd);
    $t->cmd("ena");
    my @lines = $t->cmd("show gsm 0 $slot rssi");
    $_=@lines[0];
    
    # Вырезаем необходимое значение
    (my $rssi)= /^.+RSSI=-(\d+),.+$/;
    
    # Если что-то не так - возвращаем 100
    if(!$rssi) { print 100; };
    print $rssi . "\n";
    В качестве параметра в скрипт передается номер слота.
    По аналогии, можно таким же образом мониторить любые данные, доступные через интерфейс командной строки.

    Для работы скрипта нужен Perl и модуль Net::Telnet.

    Comment

    Working...